/**
 * 年轻代垃圾回收测试
 *
 * @author: zr
 * @date: 2022-04-09
 */
public class YGCTest {

    public static void main(String[] args) throws Exception {
        // 线程刚启动，我们必须先找到这个PID，也就是进程ID，然后再执行jstat命令观察程序运行时JVM的情况。
        Thread.sleep(30000);
        while (true) {
            loadData();
        }
    }

    public static void loadData() throws Exception {
        byte[] data = null;
        // 循环50次，模拟每秒50个请求，每次请求会加载出来100kb的大小内存
        for (int i = 0; i < 50; i++) {
            data = new byte[100 * 1024];
        }
        // 这些对象都是短生命周期的对象，方法结束只有，就会变成垃圾对象，随时可以回收
        data = null;
        Thread.sleep(1000);
    }
}
